<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui">

<ui:composition template="/template.xhtml" >

    <ui:define name="titulo" >
        Ingreso al sistema
    </ui:define>
    
    <ui:define name="header-right">
        
        <p:menuButton value="#{usuarioSession.usuario.nombre}" rendered="#{not empty usuarioSession.estaRegistrado}" style="float: right;">
            <p:menuitem value="Mis Datos"  icon="ui-icon-disk"/>                                                                
            <p:separator />
            <p:menuitem value="Salir" actionListener="#{usuarioSession.logout}" ajax="false" icon="ui-icon-close"/>                                
        </p:menuButton>
    </ui:define>
        
    <ui:define name="contenido" >
        
        <h:form id="formBusqueda" prependId="false" >
            
            <div style="width: 100%; height: auto; clear: both; padding: 5px;">
                <p:inputText id="txtBusqueda" value="#{principalBean.txtBusqueda}" rendered="#{usuarioSession.estaRegistrado}" >
                    <p:ajax event="keyup" listener="#{principalBean.buscarMenuItem}" update=":formBusqueda:dgResultado" />
                </p:inputText>  
            </div>
            
            <p:dataGrid id="dgResultado" value="#{principalBean.resultadoBusqueda}" var="r" rendered="#{not empty principalBean.resultadoBusqueda}" 
                        columns="10" layout="grid"
                        rows="30" paginator="true" paginatorAlwaysVisible="false">

                <f:facet name="header">
                    Busqueda
                </f:facet>
                
                <h:outputLink  value="#{r.url}.jsf" target="_blank"  >  
                    <div class="menuItemBusqueda menutipo#{r.tipo}" >  
                        #{r.nombre} 
                    </div>
                </h:outputLink>
                
                
            </p:dataGrid>
            
        </h:form>
        
        <p:spacer height="10" />
                
        <h:form>
                                
            <p:tab title="Menú principal" >
                
                <p:tabView value="#{principalBean.menuPrincipal}" var="mp" orientation="left" style="min-height: 400px;">
                                
                        <p:tab title="#{mp.nombre}" >

                            <p:accordionPanel value="#{mp.menuItem}" var="m1" multiple="true">

                                <p:tab title="#{m1.nombre}">
                                    
                                    <!-- Menu item-->                                    
                                    <h:outputLink  value="#{request.contextPath}#{m1.url}.jsf" target="_blank" rendered="#{empty m1.menuItem}" >                                                   
                                        <div class="menuItem menutipo#{m1.tipo}" >  
                                            
                                            #{m1.nombre}  
                                            
         
                                        </div>
                                    </h:outputLink>

                                    <ui:repeat value="#{m1.menuItem}" var="m2">       

                                       <!-- Menu item-->
                                       <h:outputLink  value="#{request.contextPath}#{m2.url}.jsf" target="_blank" rendered="#{empty m2.menuItem}" >                                                   
                                         <div class="menuItem menutipo#{m2.tipo}" >                                         
                                            
                                            #{m2.nombre}  
                                         </div>
                                       </h:outputLink>                                       

                                       <!-- Menu principal-->
                                       <h:panelGroup rendered="#{not empty m2.menuItem}" styleClass="menuPrincipal#{m2.nivel}" >                                                        
                                           #{m2.nombre}  
                                       </h:panelGroup>                                                      

                                       <ui:repeat value="#{m2.menuItem}" var="m3">

                                           <!-- Menu item-->
                                           <h:outputLink  value="#{request.contextPath}#{m3.url}.jsf" target="_blank" rendered="#{empty m3.menuItem}" >                                                   
                                               <div class="menuItem menutipo#{m3.tipo}" >                                         
                                                   
                                                   #{m3.nombre}  
                                                   
                                               </div>
                                           </h:outputLink>

                                           <!-- Menu principal-->
                                           <h:panelGroup rendered="#{not empty m3.menuItem}" styleClass="menuPrincipal#{m3.nivel}" >                                                        
                                               #{m3.nombre}  
                                           </h:panelGroup> 

                                           <ui:repeat value="#{m3.menuItem}" var="m4">

                                               <!-- Menu item-->
                                               <h:outputLink  value="#{request.contextPath}#{m4.url}.jsf" target="_blank" rendered="#{empty m4.menuItem}" >                                                   
                                                   <div class="menuItem menutipo#{m4.tipo}" >                                                         
                                                       
                                                       #{m4.nombre}  
                                                       
                                                   </div>
                                               </h:outputLink>
                                               <!-- Menu principal-->
                                               <h:panelGroup rendered="#{not empty m4.menuItem}" styleClass="menuPrincipal#{m4.nivel}" >                                                        
                                                   
                                                   #{m4.nombre}  
                                               </h:panelGroup> 

                                           </ui:repeat>

                                        </ui:repeat>

                                    </ui:repeat>

                                </p:tab>                        
                            </p:accordionPanel>                        

                        </p:tab>                
                    </p:tabView>
                
                </p:tab>
            
            
        </h:form>
        
    </ui:define>

</ui:composition>
</html>
